System and method for establishing a wireless connection between power tool and mobile device

ABSTRACT

A method and system for connecting a power tool with a mobile device. The mobile device receives a user request to connect to a power tool and transmits a short-range advertisement. The power tool receives the short-range advertisement and transmits a signal. The mobile device receives the signal from the power tool and determines a signal strength. The mobile device compares the signal strength to a predetermined signal strength value. When the signal strength value exceeds the predetermined signal strength value, the mobile device connects with the power tool.

RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 16/522,856, filed on Jul. 26, 2019, granted as U.S.Pat. No. 10,582,368, which is a continuation of U.S. patent applicationSer. No. 16/164,960, filed on Oct. 19, 2018, granted as U.S. Pat. No.10,382,942, which is a continuation of U.S. patent application Ser. No.15/615,214, filed on Jun. 6, 2017, granted as U.S. Pat. No. 10,149,142,which claims priority to U.S. Provisional Patent Application No.62/346,421, filed on Jun. 6, 2016, the entire contents of each of whichare hereby incorporated by reference.

FIELD OF THE INVENTION

This application relates to power tools that communicate wirelessly witha mobile device.

SUMMARY

In one embodiment, a method is provided for connecting a power tooldevice with a mobile device. The method includes receiving, at a userinterface of the mobile device, a request to connect to the power tooldevice. A transceiver of the mobile device then transmits a short-rangeadvertisement. The method further includes receiving a signal from thepower tool device in response to the short-range advertisement anddetermining, using an electronic processor of the mobile device, asignal strength of the signal. The electronic processor furtherdetermines that the signal strength is above a signal strength thresholdand establishes a connection with the power tool device in response todetermining that the signal strength is above the signal strengththreshold.

In another embodiment, a mobile device is provided for connecting with apower tool device. The mobile device includes a transceiver, a memory,and an electronic processor coupled to the transceiver and memory. Theelectronic processor is configured to receive, via a user interface ofthe mobile device, a request to connect to the power tool device and totransmit, with the transceiver, a short-range advertisement. Theelectronic processor further receives, via the transceiver, a signalfrom the power tool device in response to the short-range advertisement,and determines a signal strength of the signal. The electronic processordetermines that the signal strength is above a signal strengththreshold, and establishes a connection with the power tool device inresponse to determining that the signal strength is above the signalstrength threshold.

In another embodiment, a method is provided for connecting a power tooldevice with a mobile device. The method includes receiving, at a userinterface of the mobile device, a request to connect to the power tooldevice. The method further includes transmitting, with a transceiver ofthe mobile device, a short-range advertisement, and receiving a signalfrom the power tool device in response to the short-range advertisement.In the method, an electronic processor of the mobile device determines asignal strength of the signal and determines that the signal strength isabove a signal strength threshold. In response to determining that thesignal strength is above the signal strength threshold, the electronicprocessor adds the power tool device to a power tool device inventory ofa user.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The accompanying figures, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateembodiments of concepts that include the claimed invention, and explainvarious principles and advantages of those embodiments.

FIG. 1 is a diagram of a system for establishing a wireless connectionin accordance with some embodiments.

FIG. 2 is a diagram of a power tool in accordance with some embodiments.

FIG. 3 is a diagram of a mobile device in accordance with someembodiments.

FIG. 4 is a flowchart of a method of establishing a wireless connectionbetween a power tool and a mobile device in accordance with someembodiments.

FIG. 5 illustrates an example implementation of the system from FIG. 1.

FIG. 6 illustrates a user interface of the mobile device of FIG. 3.

FIG. 7 illustrates a user interface of the mobile device of FIG. 3.

FIG. 8 is a flowchart of a method of configuring profile of the powertool of FIG. 2 using the mobile device of FIG. 3.

FIG. 9 is a flowchart of a method of checking for proximate tools usingthe mobile device of FIG. 3.

FIG. 10 is a flowchart of a method for comparing nearby tools to aninventory in accordance with some embodiments.

Skilled artisans will appreciate that elements in the figures areillustrated for simplicity and clarity and have not necessarily beendrawn to scale. For example, the dimensions of some of the elements inthe figures may be exaggerated relative to other elements to help toimprove understanding of embodiments of the present invention.

The apparatus and method components have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present invention so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

DETAILED DESCRIPTION OF THE INVENTION

One embodiment provides a method for connecting a power tool with amobile device. The method includes the mobile device receiving a userrequest to connect to the power tool and transmitting a short-rangeadvertisement. The power tool receives the short-range advertisement andtransmits a signal. The mobile device receives the signal and determinesa signal strength. The mobile device compares the signal strength to apredetermined signal strength value. When the signal strength exceedsthe predetermined signal strength value (e.g., indicating that themobile device 110 has tapped the power tool 120 or that the mobiledevice 110 was brought in close proximity of the power tool 120), themobile device performs one or more of connecting with the power tool,adding the power tool to a power tool inventory of a user, sending thepower tool a configuration profile to configure the power tool, andsending security settings to the power tool.

Another embodiment provides a mobile device for connecting with a powertool. The mobile device includes an electronic processor coupled to amemory. The electronic processor is configured to receive, via a userinterface of the mobile device, a request to connect to a power tool andtransmit, via a short-range transceiver, a short-range advertisement.The electronic processor is further configured to receive a signal fromthe power tool and determine a signal strength of the signal. Theelectronic processor is also configured to compare the signal strengthto a predetermined signal strength value. When the signal strengthexceeds the predetermined signal strength value (e.g., indicating thatthe mobile device 110 has tapped the power tool 120 or that the mobiledevice 110 was brought in close proximity of the power tool 120), theelectronic processor performs one or more of connecting with the powertool, adding the power tool to a power tool inventory of a user, sendingthe power tool a configuration profile to configure the power tool, andsending security settings to the power tool.

FIG. 1 is a diagram of a system 100 for establishing a wirelessconnection. In the example illustrated, the system 100 includes a mobiledevice 110. The mobile device 110 may be, for example, a smarttelephone, a tablet computer, a laptop computer and the like. The mobiledevice 110 communicates with a plurality of power tools 120A through120M and a plurality of battery packs 130A through 130N. On a singularbasis, one of the power tools 120A through 120M may be referred toherein as a power tool 120. Similarly, on a singular basis, one of thebattery packs 130A through 130N may be referred to herein as a batterypack 130. The power tool 120 may be, for example, a drill/driver, ahammer drill, an impact driver, a jigsaw, a reciprocating saw, and thelike. The battery pack 130 may be, for example, a 12 V or 18 V batterypack used to power the power tools 120A through 120M.

The mobile device 110 communicates over a communication network 140 witha server 150. The communication network 140 may be a wired or wirelesscommunication network, for example, the Internet, a cellular network,and the like. The server 150 may be, for example, a manufacturer'sserver, a company's personal server listing the tools owned by thecompany, and the like. FIG. 1 illustrates only one example embodiment ofthe system 100. In other embodiments, the system 100 may include more orfewer components and may perform functions that are not explicitlydescribed herein.

FIG. 2 is a diagram of one embodiment of the power tool 120. In theexample illustrated, the power tool 120 includes a power source 210,Field Effect Transistors (FETs) 220, a motor 230, Hall sensors 240, amotor controller 250, user input 260, and a power tool transceiver 270.The power source 210 provides direct-current (DC) power to variouscomponents of the power tool 120 and may be a power tool battery pack,for example, battery pack 130. In some embodiments, the power source 210may receive AC power from a tool plug that is coupled to a standard walloutlet, and then filter, condition, and rectify the received power tooutput DC power to the components of the power tool 120.

Each Hall sensor 240 outputs motor feedback information, such as anindication when a magnet of the rotor rotates across the face of thatHall sensor 240. Based on the motor feedback information from the Hallsensors 240, the motor controller 250 can determine the position,velocity, and acceleration of the rotor. The motor controller 250 alsoreceives user controls from the user input 260, such as by depressing atrigger or shifting a forward/reverse selector. In response to the motorfeedback information and user controls, the motor controller 250transmits control signals to control the FETs 220 to drive the motor230. By selectively enabling and disabling the FETs 220, power from thepower source 210 is selectively applied to stator coils of the motor 230to cause rotation of a rotor. Although not shown, the motor controller250 and other components of the power tool 120 are electrically coupledto the power source 210 such that the power source 210 provides powerthereto.

The power tool transceiver 270 is electrically coupled to the motorcontroller 250. In some embodiments, the power tool transceiver 270 maybe a part of the motor controller 250. The motor controller 250communicates with the mobile device 110 via the power tool transceiver270. The communications may be used for various purposes. For Example,the motor controller 250 may receive profile information for the powertool 120 from the power tool transceiver 270. In response to the profileinformation, the motor controller 250 may set limits of the power tool120 and transmit control signals to control the FETs 220 to drive themotor 230. Additionally, the motor controller 250 may provideidentifying information of the power tools 120 to the mobile device 110via the power tool transceiver 270. Other applications of thecommunications via the power tool transceiver 270 are discussed infurther detail below. FIG. 2 illustrates only one example embodiment ofa power tool 120. The power tool 120 may include more or fewercomponents and may perform functions other than those explicitlydescribed herein.

FIG. 3 is a diagram of one embodiment of the mobile device 110. In theexample illustrated, the mobile device 110 includes an electronicprocessor 310, a memory 320, a short-range transceiver 330, a networkinterface 340, an input/output interface 350, and an accelerometer 360.The electronic processor 310, the memory 320, the short-rangetransceiver 330, the network interface 340, the input/output interface350, and the accelerometer 360 communicate over one or more controland/or data buses, for example, a communication bus 370. FIG. 3illustrates only one example embodiment of a mobile device 110. Themobile device 110 may include more or fewer components and may performfunctions other than those explicitly described herein.

In some embodiments, the electronic processor 310 is implemented as amicroprocessor with separate memory, such as the memory 320. In otherembodiments, the electronic processor 310 may be implemented as amicrocontroller (with memory 320 on the same chip). In otherembodiments, the electronic processor 310 may be implemented usingmultiple processors. In addition, the electronic processor 310 may beimplemented partially or entirely as, for example, a field programmablegate array (FPGA), an application specific integrated circuit (ASIC),and the like, and the memory 320 may not be needed or may be modifiedaccordingly. In the example illustrated, the memory 320 includesnon-transitory, computer-readable memory that stores instructions thatare received and executed by the electronic processor 310 to carry outfunctionality of the mobile device 110 described herein. The memory 320may include, for example, a program storage area and a data storagearea. The program storage area and the data storage area may includecombinations of different types of memory, such as a read-only memoryand random-access memory.

The short-range transceiver 330 enables wireless communication from themobile device 110 to, for example, the power tools 120A through 120M andthe battery packs 130A through 130N. The network interface 340 enableswired or wireless communication from the mobile device 110 to, forexample, the server 150. In some embodiments, rather than including theshort-range transceiver 330 and the network interface 340, the mobiledevice 110 may include a single transceiver to perform functions of boththe short-range transceiver 330 and the network interface 340. In someembodiments, the short-range transceiver 330 may include separatetransmitting and receiving components, for example, a transmitter, and areceiver that perform the functions of the short-range transceiver 330and/or the network interface 340.

The input/output interface 350 may include one or more input mechanisms(for example, a touch screen, a keypad, and the like), one or moreoutput mechanisms (for example, a display, a speaker, and the like), ora combination thereof. The input/output interface 350 receives inputfrom a user, provides output to a user, or a combination thereof. Theaccelerometer 360 measures acceleration forces and/or orientation of themobile device 110. The accelerometer 360 outputs acceleration, g-force,or orientation information of the mobile device 110 to the electronicprocessor 310 over the communication bus 370.

FIG. 4 is a flowchart of one embodiment of a method 400 for establishinga wireless connection. In the example illustrated, method 400 includesreceiving a user request to scan for nearby power tools 120 (e.g., thepower tools 120A through 120M that are within wireless communicationrange) (at step 410). The mobile device 110 may receive a user requestto scan for power tools 120 via the input/output interface 350 of themobile device 110. For example, the user may select a scan option on atouch screen of the mobile device 110.

At step 420, the mobile device 110 transmits a short-rangeadvertisement. For example, the mobile device 110 transmits a Bluetooth®advertisement via the short-range transceiver 330. The mobile device 110may transmit the short-range advertisement for a predetermined period oftime after the mobile device 110 receives the user request at step 410.For example, the mobile device 110 may transmit the short-rangeadvertisement for 5 seconds, 10 seconds, 15 seconds, or more afterreceiving the user request. The short-range advertisement may betransmitted a pre-determined number of times per second. For example,the mobile device 110 may transmit the short-range advertisement 10 ormore times per second during the 15 second period.

At step 430, the mobile device 110 receives a signal from the power tool120. The power tool 120 is configured to transmit the signal via thepower tool transceiver 270. For example, the power tool 120 transmits aBluetooth® signal. In some embodiments, the power tool 120 transmits thesignal in response to receiving the short-range advertisement from themobile device 110. In other embodiments, the power tool 120 transmitsthe signal in response to a user pressing a button on the power tool120. In these embodiments, the mobile device 110 may receive the signalfrom the power tool 120 without the need for transmitting a short-rangeadvertisement. That is, the mobile device 110 may listen for and receivea signal from the power tool 120 after receiving a request to scan fornearby tools without transmitting a short-range advertisement. Thesignal may include one or more of a tool identifier, a tool type, atransceiver type, a transceiver power level, and other information. Insome embodiments, the mobile device 110 may not receive a signal fromthe power tool 120. In these embodiments, the mobile device 110 maynotify the user via a graphical user interface that no signal wasreceived from the power tool 120.

At step 440, the electronic processor 310 determines the signal strengthof the signal received from the power tool 120 at step 430. For example,the electronic processor 310 may detect, store, and output a receivedsignal strength indication (RSSI) based on the received signal from thepower tool 120. The detection of signal strength may be based on, forexample, the amplitude of the incoming signal.

At step 450, the electronic processor 310 of the mobile device 110compares the signal strength to a predetermined threshold. Theelectronic processor 310 may compare the received signal strengthindication (RSSI) to the predetermined threshold. The predeterminedthreshold may be set based on the distance at which the mobile device110 is desired to connect with the power tool 120. For example, thepredetermined threshold may be set such that the mobile device 110 iswithin about 1-10 centimeters (e.g., close proximity of the tool) beforethe signal strength exceeds the predetermined threshold, or such thatthe mobile device 110 is in physical contact with the power tool 120(e.g., tapping the tool). However, the predetermined threshold may bechanged to increase or decrease the distance at which the mobile device110 initiates a connection with the power tool 120. For example, themobile device 110 may alter the predetermined threshold based on userinput to the mobile device 110 via a graphical user interface on themobile device 110.

In some embodiments, the electronic processor 310 of the mobile device110 may use sensor information in addition to the signal strength todetermine whether the mobile device 110 is within close proximity of thepower tool 120. For example, the electronic processor 310 may receive anoutput from the accelerometer 360 that indicates that the mobile device110 was moved. The electronic processor 310 may also detect that duringthe movement of the mobile device 110, the signal strength received fromthe power tool 120 increased. Based on this detection, the electronicprocessor 310 may determine that the mobile device 110 was tapped withthe power tool 120 or brought in close proximity of the power tool 120.In other embodiments, different combination of inputs from sensors andthe received signal strength may be used to determine whether the mobiledevice 110 was tapped with the power tool 120 or was brought in closeproximity of the power tool 120. For example, the electronic processor310 may receive an output from the accelerometer 360 that indicates thatthe mobile device 110 was moving and stopped moving or changeddirections, which in combination with the signal strength abovethreshold, may indicate that the mobile device 110 tapped the power tool120 or was momentarily brought into close proximity with the power tool120 before being pulled back by a user.

When the signal strength exceeds the predetermined threshold, the mobiledevice 110 connects with the power tool 120, adds the power tool 120 tothe roster/inventory of the mobile device 110, or both (at step 460).For example, the mobile device 110 initiates a Bluetooth® connectionwith the power tool 120. The mobile device 110 and the power tool 120can exchange information once a connection is established (e.g., whenthe mobile device 110 and the power tool 120 are connected over aBluetooth® connection). Establishing a connection may includesuccessfully communicating signals by the mobile device 110 and thepower tool 120 according to a handshake protocol, and establishing acommunication channel for further communications. The mobile device 110may further add the power tool 120 to the roster of the mobile device110. The roster may be stored in the memory 320 or on a server (e.g.,the server 150) in communication with the mobile device 110. Similarly,the mobile device 110 is added to the roster of the power tool 120stored in a memory of the power tool 120.

Optionally, when the signal strength is determined to be below thepredetermined threshold in step 450, the mobile device 110 may instructthe user to bring the mobile device 110 in close proximity of the powertool 120 (at step 470) and return to step 410 to wait for another userrequest to scan for nearby power tools 120. For example, the mobiledevice 110 may display a message via a graphical user interfaceinstructing the user to tap the power tool 120 with the mobile device110 or bring the mobile device 110 within close proximity (e.g., within2-3 feet) of the power tool 120. In some embodiments, when the signalstrength is below the predetermined threshold, the mobile device 110 maydisplay a message notifying the user that no power tools 120 were foundwithin close proximity.

In some embodiments, method 400 may be used to pair the mobile device110 with the power tool 120. That is, when the mobile device 110 isbrought close to in contact with the power tool 120, the mobile device110 pairs with the power tool 120. The pairing process involvesgenerating a communication link (also known as a bond) between themobile device 110 and the power tool 120. The pairing process may betriggered by a specific request from a user to generate a bond on agraphical user interface of the mobile device 110. Subsequently, themobile device 110 may connect with the power tool 120 whenever they arebrought close together or contacted after the initial pairing operationwithout repeating the pairing process to confirm device identities.

In some embodiments, adding the power tool 120 to the inventory mayinclude adding a power tool identifier of the power tool 120 to anelectronic database that is associated with a user identifier, forexample, of a user of the mobile device 110. In some embodiments, addingthe power tool 120 to the inventory may also include identifying, forexample, a user of the mobile device 110 as an owner of the power tool120 in an electronic database.

In some embodiments, identifying the user of the mobile device 110 as anowner of the power tool 120 may include updating one or more permissionsof the user with respect to the power tool 120. The mobile device 110 orthe server 150 may store and maintain permissions of the user withrespect to the power tool 120. For example, in conjunction with beingidentified as the owner, the mobile device 110 may update thepermissions of the user to allow the user to adjust security settings ofthe power tool 120. The mobile device 110 then permits the user toadjust security settings of the power tool 120, through the mobiledevice 110, as described below with respect to method 900. In contrast,users that are not identified as an owner may be denied the ability toadjust security settings by the mobile device 110. As additionalexamples, a user identified as an owner may have permissions updated topermit the user to read tool usage data from the power tool 120 or senda configuration file to configure operating parameters of the power tool120.

In some embodiments, identifying the user of the mobile device 110 as anowner of the power tool 120 may include allowing the user to configurepermissions for other users, which indicate whether a mobile device 110of such other users are able to configure operation parameters of thepower tool 120 or configure security settings of the power tool 120. Forexample, when identified as the owner, a user may use the mobile device110 to configure permissions for other users, which are maintained onthe server 150. The mobile devices 110 of the other users may access theserver 150 to determine permission levels with respect to power tools120 encountered.

In some embodiments, the electronic processor 310 averages the signalstrength of the last five signals received from the power tool 120 (atstep 440). That is, the electronic processor 310 continuously determinesthe signal strength of the received signals and averages the signalstrength to determine average signal strength over a period of time. Theelectronic processor 310 then compares the average signal strength tothe predetermined threshold at step 450, and thereafter continues withthe method 400 as previously described. When the average signal strengthexceeds the predetermined threshold, the mobile device 110 connects withthe power tool 120 and adds the power tool 120 to the roster/inventoryof the mobile device 110 (at step 460). In these embodiments, theelectronic processor 310 may also be configured to weight the receivedsignal strengths when determining the averages. For example, theelectronic processor 310 may weigh the most recent signal (e.g., thefifth signal) more than the initial signal (e.g., the first signal).

In other embodiments, the electronic processor 310 continuously monitorsthe signal strength to determine whether the signal strength isincreasing. For example, the electronic processor 310 may firstdetermine that the signal strength exceeds a predetermined threshold(step 450). The electronic processor 310 then determines whether thesignal strength of signals from the power tool 120 is increasing at apredetermined rate. When the signal strength increases at or above thepredetermined rate, the mobile device 110 connects with the power tool120 and adds the power tool 120 to the roster/inventory of the mobiledevice 110. In these instances, the electronic processor 310 may also beconfigured to detect the mobile device 110 tapping the power tool 120.For example, the electronic processor 310 may be configured to detectthat the signal strength is increasing at a certain rate, reached athreshold, and is decreasing at a certain rate. That is, the signalstrength indicates that the mobile device 110 is tapping the power tool120 one or more times. The electronic processor 310 connects the mobiledevice 110 with the power tool 120 upon detecting that the mobile device110 tapped the power tool 120.

The signal strength of the signal from the power tool 120 may vary basedon the type of the power tool transceiver 270 used in the power tool120. In these instances, the power tool 120 may indicate the type of thepower tool transceiver 270 in the signal transmitted by the power tool120 (step 430). The mobile device 110 may then adjust the predeterminedthreshold used in step 450 based on the signal received from the powertool 120. In other embodiments, the mobile device 110 may automaticallydetect the type of power tool 120 based on the received signal (e.g.,based on an encoded tool identifier). The mobile device 110 may thenlook up the type of power tool transceiver 270 used in the power tool120 from the server 150, and adjust the predetermined threshold based onthe determined type of power tool transceiver 270.

In some embodiments, the power tool 120 sends a value of thetransmission power used with the signal that is transmitted at step 430of FIG. 4. The mobile device 110 may use this transmission power valueto set the predetermined threshold used in step 450 and determine theproximity of the power tool 120 relative to the mobile device 110.

In some embodiments, the mobile device 110 may retrieve usage data fromthe power tool 120 after establishing a connection with the power tool120. The power tool 120 may record usage data in a memory of the powertool 120. The power tool 120 may record, for example, a current drawparameter indicating current drawn by the motor 230, a motor speedparameter indicating a motor speed, a vibration parameter indicatingvibrations of the power tool 120, etc. The mobile device 110 may receivethis usage data over the communication link established between themobile device 110 and the power tool 120. The usage data then may bedisplayed on the mobile device 110 or transmitted to another device,such as the server 150.

Accordingly, various embodiments disclosed herein enable a user toemploy a mobile device to quickly connect and communicate with aparticular power tool, even when the particular power tool is positionedin an area with several power tools, by bringing the mobile device inclose proximity to the particular power tool.

FIG. 5 illustrates an example implementation of the system 100. Thepredetermined threshold described with respect to step 450 of FIG. 4 maybe set such that the mobile device 110 will connect with a power tool120A that is within a first region 510. Accordingly, the mobile device110 may ignore (e.g., not connect with) the power tools 120 outside thefirst region 510. The second region 520 may represent a region in whichthe mobile device 110 and the power tools 120 are within wirelesscommunication range. The area outside of the second region 520represents an area outside of wireless communication range of theshort-range transceiver 330 of the mobile device 110 or the power tooltransceiver 270.

In some embodiments, the mobile device 110 may display, via theinput/output interface 350, a list of power tools 600 listing the powertools 120 that are near (i.e., within communication range of) the mobiledevice 110, as shown in FIG. 6. The mobile device 110 may display thepower tools 120 in the order of the signal strength received from thepower tools 120. For example, based on the positioning in the diagram ofFIG. 5, the mobile device 110 would likely determine that the power tool120A has a higher signal strength than the power tool 120B because thepower tool 120A is within the first region 510 that is closer to themobile device 110. Accordingly, the mobile device 110 may show the powertool 120A that is within the first region 510 at the top of the powertool list on a user interface of the mobile device 110 and show thepower tool 120B that is within the second region 520 second in the powertool list. The mobile device 110 may show the power tool 120C that isoutside both the first region 510 and the second region 520 asunavailable to connect near the bottom of the power tool list on theuser interface of the mobile device 110, or may not show the power tool120C on the power tool list.

In some embodiments, the above described features may be used to apply aconfiguration profile to the power tool 120. A user of the power tools120A through 120M may configure a profile of a power tool 120 on themobile device 110. The configuration profile includes, for example,various settings or parameters that configure the power tool 120. Agraphic user interface (GUI) 700 is generated on the mobile device 110to enable the mobile device 110 to receive user input that configuresthe profile (as shown in FIG. 7). The user may then tap power tool 120with the mobile device 110 or bring the mobile device 110 in closeproximity with the power tool 120 to apply the profile to the power tool120.

FIG. 8 is a flowchart of one embodiment of a method 800 for configuringa profile of the power tool 120 with the mobile device 110. In theexample illustrated, method 800 includes receiving a user request toconfigure a profile of a power tool 120 (at step 810). The mobile device110 may receive a user request to configure the profile of the powertool 120 via the input/output interface 350 of the mobile device 110.For example, the user may select a configure profile option on a touchscreen of the mobile device 110. Based on the user input, the mobiledevice 110 generates a configuration profile for the power tool 120.

At step 820, the mobile device 110 transmits a short-rangeadvertisement, for example, via the short-range transceiver 330. At step830, the mobile device 110 receives a signal from the power tool 120. Asdescribed above with respect step 430 of FIG. 4, when the mobile device110 does not receive a signal from the power tool 120, the mobile device110 may notify the user via a graphical user interface that no signalwas received from the power tool 120. At step 840, the mobile device 110determines a signal strength of the signal received from the power tool120, for example, a received signal strength indication. At step 850,the mobile device 110 compares the signal strength to a predeterminedthreshold. In some embodiments, the predetermined threshold is set at alevel that, when exceeded, indicates that the mobile device 110 istapping or in close proximity of the power tool 120 (e.g., within 1-10centimeters). The predetermined threshold may be higher (indicated agreater distance), in other embodiments.

When the signal strength exceeds the predetermined threshold (i.e., whenthe user taps the power tool 120 with the mobile device 110 or bringsthe mobile device 110 in close proximity of the power tool 120), themobile device 110 transmits the profile information to the power tool120 (at step 860). That is, the mobile device 110 in addition toestablishing a connection with the power tool 120, transfers theconfiguration profile to the motor controller 250 via the power tooltransceiver 270 in response to determining that the signal strengthexceeds the predetermined threshold. The motor controller 250 may thenapply the configuration profile. For example, the configuration profilemay include one or more tool control parameters, such as motor speed,motor acceleration, motor cut-off thresholds (e.g., a current level atwhich the motor 230 stops a driving operation), and the like. Theconfiguration profile, upon receipt, may be stored in the motorcontroller 250. The motor controller 250 may then, in response to theuser input 260 (e.g., a trigger pull), access the configuration profileand drive the motor 230 according to the one or more tool controlparameters.

Optionally, when the signal strength is below the predeterminedthreshold as determined in step 850, the mobile device 110 instructs theuser to bring the mobile device 110 in close proximity with the powertool 120 as described above with respect of step 470 of FIG. 4 (at step870). The method 800 then returns to step 810 to wait to receive anotheruser request to configure the profile of a power tool 120.

In some embodiments, the mobile device 110 may be tapped against orbrought in close proximity to multiple power tools 120, one at a time,to quickly configure the power tools 120. For example, the method 800,particularly steps 820, 830, 840, 850, and 860 may be repeated as themobile device 110 is tapped against or brought in close proximity toeach of the power tools 120 to be configured. Each time the mobiledevice 110 determines that the signal strength of one of the power tools120 exceeds the threshold (e.g., each time the mobile device 110 istapped against one of the power tools 120 or brought in close proximityof the power tools 120), the mobile device 110 transmits theconfiguration profile to configure the power tool 120.

In some embodiments, the power tools 120A through 120M may includesecurity features that limit operation. For example, the power tool 120may be configured to operate only when the owner (that is, the owner ofthe power tool 120 and the mobile device 110) enables operation of thepower tool 120. In these instances, the above described features may beused to enable the operation of the power tool 120. That is, the ownerof the power tool 120 may enable and disable the operation of the powertool 120 by tapping the power tool 120 with the mobile device 110 orbringing the mobile device 110 in close proximity of the power tool 120.For example, with reference to FIG. 8, in place of step 810, the mobiledevice 110 may receive user input indicating a desire to toggle theenable/disable state of the power tool 120. Then, in response to themobile device 110 tapping the power tool 120 or being in close proximityof the power tool 120 (as determined in step 850), the power tool 120has a state toggled from enabled to disabled, or vice versa, dependingon the current state. That is, one or more security settings specifiedby the user are sent to the power tool 120 and the power tool 120updates its security settings in response. In some embodiments, based onuser input (e.g., in modified step 810), the mobile device 110 mayspecify a time period (e.g., 30 minutes, 1 hour, 1 day, 1 week, or 1month) in which the power tool 120 is to remain enabled after beingtapped or brought in close proximity of the mobile device 110.

In some embodiments, the above described features may be used forsharing security settings with multiple power tools 120 similar to themethod 800 described above with respect to sharing a configurationprofile to configure multiple power tools 120. The user may configuresecurity settings on the mobile device 110. The security settings mayinclude, for example, one or more of an enable command, a disablecommand, an enable for a set time period command, and an enable viewingor configuration by another user command. The user may then share thesesecurity settings with the power tool 120A through 120M by tapping thepower tools 120A through 120M with the mobile device 110 or bringing themobile device 110 in close proximity of the power tools 120A through120M.

In some embodiments, the above described features may be used forinventory check-in/out of a tool crib. A user may own several powertools 120 (for example, the power tools 120A through 120M) that the userstores in a crib (for example, in a garage, tool shed, or truck). Theuser may use the features described above (e.g., with respect to FIG. 8)to check in and check-out a power tool 120 from the tool crib. Themobile device 110 keeps track of the power tools 120 that are checkedout and the power tools 120 still remaining at the tool crib. Thisallows the user to keep track of all the tools that the user owns. Forexample, a server (e.g., the server 150) in communication with themobile device 110 or the memory 320 may store a list of power tools 120of the user and, for each tool, a tool crib indication that indicateswhether the tool is in the tool crib (i.e., checked in or checked out).A graphical user interface is displayed on the mobile device 110, andthe graphical user interface shows a list of the tools of the user andtheir respective tool crib status (i.e., checked in or checked out)based on the stored indication for each tool. The mobile device 110,when in a tool crib mode and tapped against or brought in closeproximity with one of the power tools 120, may toggle the tool cribindication for that power tool 120 between a checked in and checked outstate (or vice versa, depending on the state at the time of the tap).Detecting whether the mobile device 110 has tapped one of the powertools 120 or brought in close proximity with one of the power tools 120may be performed using similar techniques as described above withrespect to methods 400 and 800.

In some embodiments, a user may utilize the above described features tolend tools. The power tool 120 may include security features to limitoperation (as described above) and visibility by mobile devices 110 ofusers not associated with the power tool 120. The user may put the powertool 120 in a lend mode by selecting a lend mode on a user interface ofthe mobile device 110 and tapping the power tool 120 or bringing themobile device 110 in close proximity of the power tool 120 to put thepower tool 120 in the lend mode (using similar techniques as describedabove with respect to methods 400 and 800). When not in the lend mode, asecond user with a second mobile device 110 (similar to the mobiledevice 110) may not be permitted (e.g., by software on the second mobiledevice 110 or encryption by the power tool 120) to connect with thepower tool 120 for enabling the power tool 120 or configuring the powertool 120 in the various ways described above. However, in the lend mode,the user may lend the power tool 120 to a second user, who may thenenable and disable the power tool 120 and configure the power tool 120using the second user's mobile device 110. The mobile device 110, basedon user input, may specify a time period that the power tool 120 remainsin the lend mode before reverting to a disabled mode.

In some embodiments, the above described features may be used to checkfor proximate tools. For example, the mobile device 110 enables a userto check that all or a subset of the power tools 120A through 120M(e.g., owned by or the responsibility of the user) are proximate to themobile device 110 at the start of a workday or task, end of a workday ortask, and other times.

FIG. 9 is one embodiment of a method 900 to check for proximate tools.In the example illustrated, method 900 includes receiving a list ofassociated power tools 120 for a user of the mobile device 110 (at step905). The list may be received from an external device, for example, theserver 150. In some instances, the list may be generated based on userinput received via the mobile device 110, for example, the user maybuild a list by entering on a touch screen of the mobile device 110 aunique identifier of each tool to be included to the list, by tappingpower tools 120 or bringing the mobile device 110 in close proximity ofthe power tools 120 (for example, using the method 400), or both. Insome embodiments, the list may be received based on the mobile device110 receiving a user selection of a particular task on the mobile device110. The task may be, for example, a particular task (e.g., install aduct, install an electrical switch, or frame a wall) or general type ofwork (e.g., electrical work, plumbing work, general construction work).In response to the task selection, the mobile device 110 generates (orrequests from and receives from the server 150) a list of associatedpower tools 120 that may be used to complete the task, the list for eachselectable task having been created and stored in a memory in advance ofthe selection. The list of associated power tools 120 may be stored onthe memory 320 of the mobile device 110. For the purposes of explanationof the method 900, the list of associated tools is assumed to includethe power tools 120A through 120M. However, as discussed, the list mayinclude various other combinations of power tools 120.

The method 900 further includes receiving a user request to check forproximate tools (at step 910). For example, the mobile device 110 mayreceive a user request to check for proximate power tools 120A through120M via the input/output interface 350 of the mobile device 110. Forexample, the user may select a check for proximate tools option on atouch screen of the mobile device 110.

At step 920, the mobile device 110 transmits a short-rangeadvertisement, for example, via the short-range transceiver. At step930, the mobile device 110 receives signals from the power tools 120Athrough 120M. The mobile device 110 may not receive a signal from somepower tools 120 (for example, power tool 120C shown in FIG. 5) that arenot within a range of the mobile device 110. At step 940, the mobiledevice 110 determines a signal strength for each signal received fromthe power tools 120A through 120M, similar to steps 440 and 840described above.

At step 950, the mobile device 110 determines which of the power tools120A through 120M have a signal strength above a first predeterminedthreshold. For example, the mobile device 110 may compare the signalstrength of the signals from each power tool 120A through 120M receivedto the first predetermined threshold. The first predetermined thresholdmay be set, for example, at a level that indicates that a power tool 120whose signal strength is above the first predetermined threshold iswithin 3 or 4 feet of the mobile device 110, or within another distanceof the mobile device 110 in other examples. For example, the firstpredetermined threshold may be set to indicate power tools 120 arewithin 5 feet (e.g., for a workshop), within 10 feet (e.g., for avehicle or a truck), within 20-30 feet (e.g., for a tool crib), and thelike. The first predetermined threshold may be modified by the user(e.g., via selections on the touch screen of the mobile device 110) toadjust the distance to other values. The power tools 120A through 120Mhaving a signal strength above the first predetermined threshold areconsidered to be proximate the mobile device 110 and may be referred toas proximate power tools 120.

In step 960, the mobile device 110 determines which of the power tools120A through 120M have a signal strength below the first predeterminedthreshold, but that which are within wireless range of the mobile device110. For example, as noted, the mobile device 110 may compare the signalstrength of the signals from each power tool 120A through 120M receivedto the first predetermined threshold in step 950. Those power tools 120Athrough 120M that provided a signal to the mobile device 110, but whichhad a signal strength below the first predetermined threshold, arewithin wireless range of the mobile device 110 (as known based on thereceipt of the signals in step 930), but are not considered proximatetools.

In step 970, the mobile device 110 determines for which of the powertools 120A through 120M no signal was received by the mobile device 110in step 930. These power tools 120A through 120M, for which no signalwas received, may be considered power tools 120 that are out of range ormissing tools.

In step 980, the mobile device 110 provides an indication of proximatetools. The indication may include a listing of those tools identified asproximate tools in step 950 being displayed on the mobile device 110. Insome embodiments, the indication may include the complete list ofassociated power tools 120 (e.g., the power tools 120A through 120M)with those tools that are proximate tools (as determined in step 950)visually distinguished from those tools that are not proximate tools.The proximate tools may be visual distinguished using underlining,highlighting, differently colored text, adjacent symbols or text,flashing symbols or text, and the like. In some embodiments, theindication may include displaying on the mobile device 110 the completelist of associated power tools 120 and, for each tool, a visualindication of whether the tool is a proximate tool, a tool withinwireless range (but not a proximate tool), or a tool outside of wirelessrange (or missing), as determined in steps 950, 960, and 970. The visualindication may include color coding the list to indicate proximate toolswith a different color than tools within wireless range and toolsoutside of wireless range. The visual indication may also include tagsto indicate the proximity status of each tool. In some embodiments, themobile device 110 may generate separate lists of tools for displayincluding each of i) the proximate tools, ii) the tools within wirelessrange, and iii) the tools outside of wireless range, and the mobiledevice 110 may cycle between display screens with the three respectivelists based on user input received via a touch screen of the mobiledevice 110. In some embodiments, the indication includes a graphicillustration of one or more of the power tools 120A through 120M thatare proximate, within range, and outside of range, using a diagramsimilar to FIG. 5. In some embodiments, the mobile device 110 may alerta user at step 980 with an audible or visual message, for example, thatone or more of the power tools 120A through 120M is not loaded into atoolbox or truck (i.e., not proximate), is not within wireless range, orboth.

Accordingly, in some embodiments, the method 900 enables a user toposition the mobile device 110 proximate a tool box, tool crib, or truckused for tool storage, and then initiate a proximate tool check todetermine whether a desired set of tools are proximate. This techniqueenables a user to determine that the desired tools are present in thetool box, tool crib, or truck, as appropriate, and not, for example,left on a jobsite, in use on a jobsite, or inappropriately removed froma jobsite. Additionally, in some embodiments, the method 900 enables auser to determine whether tools suggested for a particular task areproximate the mobile device 110, for example, when the list ofassociated tools is generated based on a user indication of a task instep 905.

In some embodiments, one or both of the steps 960 and 970 are notincluded or bypassed in method 900 such that the mobile device 110proceeds, for example, from step 950 to step 980 to provide theindication of proximate tools.

In some embodiments, one or both of the steps 905 and 970 are notincluded or bypassed in method 900. In these embodiments, the mobiledevice 110 provides an indication of proximate tools, tools withinwireless range, or both (albeit visually distinguishable) in step 980 inan ad hoc manner and not based on a previously received list ofassociated tools.

FIG. 10 is one embodiment of a method 1000 for comparing nearby tools toan inventory. In the example illustrated, the method 1000 includesreceiving a first list of associated power tools 120 for a user of themobile device 110 (at step 1010). As described above with respect tostep 905, the first list may be received from an external server (e.g.,the server 150), from a user input, created based on a user input, andthe like. The first list may be stored on the memory 320 of the mobiledevice 110.

At step 1020, the mobile device 110 receives a user request to check fornearby tools. At step 1030, the mobile device 110 transmits ashort-range advertisement, for example, via the short-range transceiver330. At step 1040, the mobile device 110 receives signals from the powertools 120A through 120M. The mobile device 110 may not receive a signalfrom some power tools 120 (for example, power tool 120C shown in FIG. 5)that are not within a range of the mobile device 110. At step 1050, themobile device 110 determines a signal strength for each signal receivedfrom the power tools 120A through 120M, similar to steps 440, 840, and940 described above.

At step 1060, the mobile device 110 determines which of the power tools120A through 120M have a signal strength above a first predeterminedthreshold and creates a second list. The second list includes powertools 120A through 120M whose signal strength is above the firstpredetermined threshold. As described above with respect to step 950 ofFIG. 9, the first predetermined threshold may be set at an appropriatelevel to indicate proximity within an area. The mobile device 110compares the signal strength of the power tool 120A through 120M to thefirst predetermined threshold.

At step 1070, the mobile device 110 compares the first list of powertools 120 to the second list created at step 1060. Thereby, the mobiledevice 110 determines which of the power tools 120 in the first list arepresent nearby, are out of the proximate area, and are out of range. Asdescribed above with respect to steps 960 and 970 of FIG. 9, the powertools 120 whose signal strength is below the first predeterminedthreshold are considered out of the proximate area and the power tools120 for which no signal was received are considered out of range.

At step 1080, the mobile device 110 indicates power tools 120 that aremissing in the proximate area. The mobile device 110 may group the powertools 120A through 120M whose signal is below the first predeterminedthreshold or from which no signal was received and display them on agraphical user interface of the mobile device 110. In some embodiments,the mobile device 110 may display the first list and use differentindicia (for example, different colors) to indicate the power tools 120that are nearby and the power tools 120 that are not nearby.

In some embodiments, the power tools 120A through 120M may be configuredto work only when within a range of the mobile device 110. That is, themotor controller 250 may frequently (for example, every 1 minute) checkfor a short-range advertisement from the mobile device 110. The motorcontroller 250 may prevent driving of the power tool 120 upon detectingthe absence of short-range advertisement from the mobile device 110within the last few minutes (for example, within the last 5 minutes).

In some embodiments of the methods 400, 800, 900, and 1000 discussedabove, fewer or additional steps are included, one or more steps areexecuted in parallel, or one or more steps are executed in a differentorder than described. In addition, methods 400, 800, 900, and 1000 mayuse inputs from sensors of the mobile device 110 (e.g., theaccelerometer 360) in addition to the received signal strengthindication to determine whether the signal strength exceeds apredetermined threshold. That is, steps 450, 850, 950, and 1060 mayinclude detecting an output of the accelerometer 360 to be in a desiredrange in addition to determining whether the signal strength exceeds apredetermined threshold.

While the above methods 400, 800, 900, and 1000 are described withrespect to power tools 120, these methods 400, 800, 900, and 1000 mayalso be used with other power tool devices. Power tool devices include,for example, motorized power tools (such as the power tools 120illustrated in FIG. 1), non-motorized electronic tools, battery packs130, and the like. Non-motorized electronic tools include, for example,work lights, detectors, stud finders, multi-meters, etc. In someexamples, the non-motorized electronic tools are powered by the powertool battery packs 130. Such non-motorized electronic tools may bepresent in the system 100 and communicate with the mobile device 110like the power tools 120 and the battery packs 130. Accordingly, in someembodiments, the method 400 may be used to establish a connection withthe power tool device, add the power tool device to inventory, or both.The method 800 may be used to add a configuration profile to the powertool device. For example, the method 800 may be used to set operationalparameters of a work light that enable or disable the work light orparticular lights therein, or alter an intensity setting of the worklight. The method 900 may be used to indicate nearby power tool devices.The method 1000 may be used to indicate missing power tool devices. Inaddition, after establishing a connection, the mobile device 110 mayretrieve usage data from the power tool devices. Usage data for batterypacks 130 may include, for example, a discharge profile, battery packtemperature, etc. Usage data for work lights may include, for example,duration of use, intensity settings, etc. Usage data for othernon-motorized electronic tools powered by the battery packs 130 include,for example, readings of the electronic tools, current usage, etc.

Thus, embodiments described herein provide, among other things, anability to efficiently connect with, communicate with, and track powertool devices. Various features and advantages are set forth in thefollowing claims.

What is claimed is:
 1. A method for configuring a profile of a power tool device, the method comprising: receiving, at a user interface of a mobile device, a request to configure a profile of a power tool device; receiving, at the user interface, a configuration profile including profile information; displaying, on the user interface, a list of nearby power tool devices; receiving, with a transceiver of the mobile device, a signal from the power tool device; determining, using an electronic processor of the mobile device, a signal strength of the signal; determining, using the electronic processor, that the mobile device is tapping or proximate to the power tool device based on the signal strength, wherein the power tool device is included in the list of nearby power tool devices and the user selects the power tool device to apply the configuration profile by tapping the mobile device with the power tool device; and transmitting, with the transceiver, the profile information to the power tool device in response to determining that the mobile device is tapping or proximate to the power tool device, wherein the power tool device is configured to apply the configuration profile in response to receiving the profile information.
 2. The method of claim 1, wherein determining that the mobile device is tapping or proximate to the power tool device includes: determining that the signal strength is increasing above a predetermined rate; determining that the signal strength exceeds a predetermined signal strength after increasing above the predetermined rate; and determining that the signal strength is decreasing above a predetermined decrease rate.
 3. The method of claim 2, further comprising: transmitting, with the transceiver, a short-range advertisement, wherein the signal is received from the power tool device in response to the short-range advertisement.
 4. The method of claim 3, further comprising: determining that a signal is not received from the power tool device in response to the short-range advertisement; and notifying, via the user interface, that no signal was received from the power tool device.
 5. The method of claim 1, wherein the profile information includes one or more tool control parameters selected from the group consisting of: motor speed, motor acceleration, and motor cut-off thresholds, wherein the power tool device drives motor of the power tool device based on the one or more tool control parameters.
 6. The method of claim 1, wherein the profile information includes security settings for the power tool device.
 7. The method of claim 1, wherein receiving, at the user interface, a configuration profile including profile information includes: generating a graphic user interface to receive user input providing the configuration profile.
 8. The method of claim 1, wherein determining the signal strength includes determining an average signal strength over a predetermined period of time.
 9. A mobile device for configuring a profile of a power tool device, the mobile device comprising: a transceiver; a memory; and an electronic processor coupled to the transceiver and memory and configured to: receive, at a user interface of the mobile device, a request to configure a profile of a power tool device; receive, at the user interface, a configuration profile including profile information; display, on the user interface, a list of nearby power tool devices; receive, with the transceiver, a signal from the power tool device; determine a signal strength of the signal; determine that the mobile device is tapping or proximate to the power tool device based on the signal strength, wherein the power tool device is included in the list of nearby power tool devices and the user selects the power tool device to apply the configuration profile by tapping the mobile device with the power tool device; and transmit, with the transceiver, the profile information to the power tool device in response to determining that the mobile device is tapping or proximate to the power tool device, wherein the power tool device is configured to apply the configuration profile in response to receiving the profile information.
 10. The mobile device of claim 9, wherein, to determine that the mobile device is tapping or proximate to the power tool device, the electronic processor is configured to: determine that the signal strength is increasing above a predetermined rate; determine that the signal strength exceeds a predetermined signal strength after increasing above the predetermined rate; and determine that the signal strength is decreasing above a predetermined decrease rate.
 11. The mobile device of claim 10, wherein the electronic processor is further configured to: transmit, with the transceiver, a short-range advertisement, wherein the signal is received from the power tool device in response to the short-range advertisement.
 12. The mobile device of claim 11, wherein the electronic processor is further configured to: determine that a signal is not received from the power tool device in response to the short-range advertisement; and notify, via the user interface, that no signal was received from the power tool device.
 13. The mobile device of claim 9, wherein the profile information includes one or more tool control parameters selected from the group consisting of: motor speed, motor acceleration, and motor cut-off thresholds, wherein the power tool device drives motor of the power tool device based on the one or more tool control parameters.
 14. The mobile device of claim 9, wherein the profile information includes security settings for the power tool device.
 15. The mobile device of claim 9, wherein, to receive the configuration profile at the user interface, the electronic processor is further configured to generate a graphic user interface to receive user input providing the configuration profile.
 16. The mobile device of claim 9, wherein, to determine the signal strength, the electronic processor is configured to determine an average signal strength over a predetermined period of time.
 17. A method for configuring a profile of a power tool device, the method comprising: receiving, at a user interface of a mobile device, a request to configure a profile of a power tool device; receiving, at the user interface, a configuration profile including profile information; receiving, with a transceiver of the mobile device, a signal from the power tool device; determining, using an electronic processor of the mobile device, a signal strength of the signal; determining, using the electronic processor, that the mobile device is tapping or proximate to the power tool device based on the signal strength, wherein determining that the mobile device is tapping or proximate to the power tool device includes: determining that the signal strength is increasing above a predetermined rate, determining that the signal strength exceeds a predetermined signal strength after increasing above the predetermined rate, and determining that the signal strength is decreasing above a predetermined decrease rate; and transmitting, with the transceiver, the profile information to the power tool device in response to determining that the mobile device is tapping or proximate to the power tool device, wherein the power tool device is configured to apply the configuration profile in response to receiving the profile information.
 18. The method of claim 17, wherein receiving, at the user interface, a configuration profile including profile information includes: generating a graphic user interface to receive user input providing the configuration profile.
 19. A mobile device for configuring a profile of a power tool device, the mobile device comprising: a transceiver; a memory; and an electronic processor coupled to the transceiver and memory and configured to: receive, at a user interface of the mobile device, a request to configure a profile of a power tool device, receive, at the user interface, a configuration profile including profile information, receive, with the transceiver, a signal from the power tool device, determine a signal strength of the signal, determine that the mobile device is tapping or proximate to the power tool device based on the signal strength, the electronic processor further configured to: determine that the signal strength is increasing above a predetermined rate, determine that the signal strength exceeds a predetermined signal strength after increasing above the predetermined rate, and determine that the signal strength is decreasing above a predetermined decrease rate, and transmit, with the transceiver, the profile information to the power tool device in response to determining that the mobile device is tapping or proximate to the power tool device, wherein the power tool device is configured to apply the configuration profile in response to receiving the profile information.
 20. The mobile device of claim 19, wherein, to receive the configuration profile at the user interface, the electronic processor is further configured to generate a graphic user interface to receive user input providing the configuration profile. 